home *** CD-ROM | disk | FTP | other *** search
/ The CICA Windows Explosion! / The CICA Windows Explosion! - Disc 2.iso / programr / ssetup26.zip / CSETUP.H_ / CSETUP.H
C/C++ Source or Header  |  1995-07-27  |  27KB  |  412 lines

  1. // ----------------------------------------------------------------------------------------------------------------------------------------------------------
  2. // Setup Studio 2.6 COPYRIGHT 1993-1995 HEXANET⌐ - Header file for C and C++ Languages.
  3. // ----------------------------------------------------------------------------------------------------------------------------------------------------------
  4. // Please, include this file to your main setup project
  5. //
  6. //        Index: ( number corresponds to line )
  7. //
  8. //            1 - Information functions
  9. //                            General            48
  10. //                            Drives               72
  11. //                            Directory        87
  12. //                            Files            96
  13. //            2 - Low level files and dirs management
  14. //                            Binary files        127
  15. //                            Ascii files        142
  16. //                            Directories        156
  17. //            3 - SDK similar functions
  18. //                            INI files managment    169
  19. //                            Programm execution    180
  20. //            4 - Setup specific helpers
  21. //                            Sections informations    211
  22. //                            Files names managment    218
  23. //                            Directories managment    236
  24. //            5 - Setup high level functions
  25. //                            Initialization        266
  26. //                            DDE with Progman    275
  27. //                            Specific functions    287
  28. //                            Interface managment    214
  29. //            6 - New release functions
  30. //                                        384
  31. //
  32. // ----------------------------------------------------------------------------------------------------------------------------------------------------------
  33.  
  34. #ifdef __cplusplus
  35.     extern "C"
  36.          {
  37. #endif
  38.  
  39. #ifndef _ssetup_h
  40. #define _ssetup_h
  41.  
  42. // INITIALIZATION FUNCTIONS //
  43. extern void WINAPI SetupInitForFunctions( LPCSTR szYourName, LPCSTR szPassword ); // Required if you want to use functions directly ( without SetupInitialize ) [new]
  44.              
  45. //------------------------------------------------------------------------------------------------------------------------------------------------------------
  46. // 1 - Information functions ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  47. //------------------------------------------------------------------------------------------------------------------------------------------------------------
  48.  
  49. //-------------------------------------------------------------------------------------------------------
  50. // General System information functions
  51. //-------------------------------------------------------------------------------------------------------
  52. #define BDETECT_WIN386            0    // 386 mode
  53. #define BDETECT_VGA640            1    // VGA 640 pixels at least 
  54. #define BDETECT_VGA800            2    // VGA 800 pixels at least
  55. #define BDETECT_VGA1024            3    // VGA 1024 pixels at least
  56. #define BDETECT_16COLORS         4    // 16 colors at least
  57. #define BDETECT_256COLORS        5      // 256 colors at least
  58. #define BDETECT_COPRO            6    // Math. coprocessor
  59. #define BDETECT_286            7     // 286 CPU
  60. #define BDETECT_386            8    // 386 CPU
  61. #define BDETECT_486            9     // 486 CPU
  62. #define BDETECT_MOUSE              10    // Mouse
  63. extern BOOL WINAPI bDetect( int CVALUE );    // Return TRUE if the element is present
  64.  
  65. #define LDETECT_BUFFERS            0    // Buffers declared in CONFIG.SYS
  66. #define LDETECT_FILES            1    // Files declared in CONFIG.SYS
  67. #define LDETECT_DRIVES            2      // Number of drives
  68. #define LDETECT_FREERES            3    // Free system resources available ( percent )
  69. #define LDETECT_FREERAM               4       // Free memory available 
  70. extern long   WINAPI lDetect( int CVALUE );    // Return the long value of item
  71.  
  72.  
  73. //-------------------------------------------------------------------------------------------------------
  74. // Drives information functions
  75. //-------------------------------------------------------------------------------------------------------
  76. #define        DRIVETYPE_REMOTE    0    // Network unit
  77. #define     DRIVETYPE_FIXED        1       // HD
  78. #define     DRIVETYPE_REMOVABLE      2          // FD
  79. #define     DRIVETYPE_UNKNOWN    3    // Unknown type
  80.  
  81. extern UINT   WINAPI AskForDriveType( UINT drive );        // Return drive type ( drive is 1, 2 .... )
  82. extern long   WINAPI AskForDriveSpace( UINT drive );         // Return drive free space in KOctets ( drive is 1, 2... )
  83. extern BOOL   WINAPI IsDriveValid( LPCSTR szDriveLetter );        // Return TRUE if szDriveLetter is an avalaible drive here
  84. extern int    WINAPI GetDriveNumber( LPCSTR szPath );        // Return number of a drive ( as a PATH )
  85.  
  86.  
  87.  
  88. //-------------------------------------------------------------------------------------------------------
  89. // Directory information functions
  90. //-------------------------------------------------------------------------------------------------------
  91. extern BOOL           WINAPI DoesDirExist( LPCSTR szDirName );    // Return TRUE if szDirName exists
  92.  
  93.  
  94.  
  95.  
  96.  
  97. //-------------------------------------------------------------------------------------------------------
  98. // Files information functions
  99. //-------------------------------------------------------------------------------------------------------
  100. extern BOOL    WINAPI DoesFileExist( LPCSTR szFileName, BOOL FormalSearch );        // search for a file, if Formal is TRUE, the function
  101.                                              // only test the directory specified, else the function
  102.                                          // search for the file in current dir., in PATH and
  103.                                         // Windows and Windows system directory.
  104. extern BOOL    WINAPI GetAbsoluteFileName( LPCSTR szFileName, LPSTR szBuffer ); // Return path and name of an existing file (2.5)
  105.  
  106.  
  107.  
  108. //-------------------------------------------------------------------------------------------------------
  109. // Module ( DLL or EXE ) information functions
  110. //-------------------------------------------------------------------------------------------------------
  111. extern UINT    WINAPI CountModuleUsage( LPCSTR szModule );        // Return number of instances of a module
  112. extern BOOL    WINAPI IsDLLLoaded( LPCSTR szModule );            // TRUE if module is loaded
  113.  
  114.  
  115.  
  116. //-------------------------------------------------------------------------------------------------------
  117. // Environment information functions
  118. //-------------------------------------------------------------------------------------------------------
  119. extern BOOL      WINAPI    GetEnvVariable(LPCSTR szVariableName, LPSTR szBuffer );    // Retrieve an environment variable ( "PATH" for example ) (2.5)
  120. extern int     WINAPI    CountPathsInPATH( );                               // Count number of paths in PATH variable
  121. extern BOOL      WINAPI    GetPathFromPATH(int iPath, LPSTR szBuffer);           // Return a path from PATH variable ( first is 1 ) (2.5)
  122.  
  123.  
  124. //------------------------------------------------------------------------------------------------------------------------------------------------------------
  125. // 2 - Low level file and dir managment ///////////////////////////////////////////////////////////////////////////////////////////////
  126. //------------------------------------------------------------------------------------------------------------------------------------------------------------
  127.  
  128. //-------------------------------------------------------------------------------------------------------
  129. // Binary files
  130. //-------------------------------------------------------------------------------------------------------
  131. extern BOOL     WINAPI RenameFile ( LPCSTR szOldFile, LPCSTR szNewFile );    // Rename a file
  132. extern BOOL     WINAPI DeleteFile( LPCSTR szFile );                // Delete a file
  133. extern BOOL     WINAPI TouchFile( LPCSTR szFileName, LPCSTR szNewDate );    // Change file date ( if szNewDate is "", the current date is used )
  134. extern BOOL     WINAPI SetReadOnly( LPCSTR szFileName, BOOL bRO );        // Set file Read Only, System and Hidden
  135. extern long     WINAPI GetFileLength( LPCSTR szFileName );                     // Return size of a file in bytes
  136. extern BOOL        WINAPI ReCreateFile( LPCSTR szOriginalName, LPCSTR szPieceFileName );   // Copy a piece of file in a file ( do not use with pieces
  137.                                                                                                                                                 // of LZ compressed file )
  138.                                                                                                                                                          
  139.  
  140.  
  141.  
  142. //-------------------------------------------------------------------------------------------------------
  143. // Ascii files
  144. //-------------------------------------------------------------------------------------------------------
  145. extern BOOL       WINAPI CreateAsciiFile( LPCSTR szFileName );                    // Create a text file
  146. extern long    WINAPI CountFileLines( LPCSTR szFileName );                        // Return number of lines in a text file
  147. extern BOOL     WINAPI GetStringFromFile( LPCSTR szFileName, long lIndex, LPSTR szBuffer );    // Return a line of a text file (2.5)
  148. extern long     WINAPI GetLineFromString( LPCSTR szFileName, LPCSTR szString, long lStart );      // Return index of a line in text file
  149. extern UINT     WINAPI FindStringInTextFile( LPCSTR szFileName, LPCSTR szString );        // Return number of lines begining with szString
  150. extern BOOL       WINAPI DeleteString( LPCSTR szFile, int iIndex );                   // Delete a string of a file
  151. extern BOOL       WINAPI AddString( LPCSTR szFile, LPCSTR szValue );                   // Add a string in a text file
  152. extern BOOL       WINAPI SetLineInFile( LPCSTR szFileName, LPCSTR szString, long lIndex );     // Change a string in a file
  153.  
  154.  
  155.  
  156. //-------------------------------------------------------------------------------------------------------
  157. // Directory managment functions
  158. //-------------------------------------------------------------------------------------------------------
  159. extern BOOL   WINAPI CreateDir( LPCSTR szDirName );          // Create a directoy ( can also create all root directories specified )
  160. extern BOOL   WINAPI DeleteDir( LPCSTR szDirName );          // Delete 1 directory and files (2.5)
  161.  
  162.  
  163.  
  164. //------------------------------------------------------------------------------------------------------------------------------------------------------------
  165. // 3 - SDK similar functions useful for Setup programms ( for VB users )////////////////////////////////////////////////
  166. //------------------------------------------------------------------------------------------------------------------------------------------------------------
  167.  
  168.  
  169. //-------------------------------------------------------------------------------------------------------
  170. // INI files managment
  171. //-------------------------------------------------------------------------------------------------------
  172. extern int   WINAPI GetWinIniInt ( LPCSTR szSection, LPCSTR szKey, int iDefault );                   // Read an int in WIN.INI
  173. extern BOOL  WINAPI GetWinIniString ( LPCSTR szSection, LPCSTR szKey, LPCSTR szDefault, LPSTR szBuffer );    // Read a string in WIN.INI (2.5)
  174. extern int   WINAPI GetIniInt ( LPCSTR szFile, LPCSTR szSection, LPCSTR szKey, int iDefault );          // Read an int in your INI file
  175. extern BOOL  WINAPI GetIniString ( LPCSTR szFile, LPCSTR szSection, LPCSTR szKey, LPCSTR szDefault, LPSTR szBuffer );// Read a string in your INI file (2.5)
  176. extern BOOL  WINAPI SetWinnIniString ( LPCSTR szSection, LPCSTR szKey, LPCSTR szValue );            // Write a string in WIN.INI
  177. extern BOOL  WINAPI SetIniString ( LPCSTR szFile, LPCSTR szSection, LPCSTR szKey, LPCSTR szValue );        // Write a string in your INI file
  178.  
  179.  
  180. //-------------------------------------------------------------------------------------------------------
  181. // Programms execution
  182. //-------------------------------------------------------------------------------------------------------
  183. #define RESTART_QUIT        0    // Quit windows and stay at DOS prompt
  184. #define RESTART_REBOOT           0x43    // Quit Windows and reboot
  185. #define RESTART_RESTART           0x42    // Quit Windows and restart Windows
  186.  
  187. extern void  WINAPI QuitWindows( UINT cMode );     // Quit windows ( and restart if choosed )
  188.  
  189. #define    APPEXECUTE_SNORMAL    0    // Show normal and activate app.
  190. #define    APPEXECUTE_SICON    1    // Show iconized and activate app.
  191. #define    APPEXECUTE_SMAX        2    // Show maximized and activate app
  192. #define    APPEXECUTE_SNOACTIVATE  3    // Show normal and do not activate app.
  193.  
  194. extern BOOL   WINAPI AppExecute( LPCSTR szAppName, UINT cShowMode );    // execute a DOS or Windows application
  195. extern BOOL   WINAPI DosTempExec( LPCSTR szAppName , LPCSTR szParams );    // Run a critical programm in DOS mode ( This function must
  196.                                        // be used to copy sytem shared DLL ( like COMMDLG.DLL ))
  197.  
  198.  
  199.  
  200.  
  201. //------------------------------------------------------------------------------------------------------------------------------------------------------------
  202. // 4 - Setup specific helpers //////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  203. //------------------------------------------------------------------------------------------------------------------------------------------------------------
  204. // Note:
  205. //
  206. //    These functions may help you to create the Setup Interface before the files transfer.
  207. //         You need to initialise the DLL before any call to these functions
  208. //
  209. //------------------------------------------------------------------------------------------------------------------------------------------------------------
  210.  
  211. //-------------------------------------------------------------------------------------------------------
  212. // Sections information
  213. //-------------------------------------------------------------------------------------------------------
  214. extern long  WINAPI GetSectionSize( LPCSTR szSectionName );    // Return the size in KOctets of a section
  215. extern long  WINAPI GetConfigurationSize( void );               // Return the size in KOctets of all selected sections
  216.  
  217.  
  218. //-------------------------------------------------------------------------------------------------------
  219. // File name mangment ( useful to create Parsed Edit controls )
  220. //-------------------------------------------------------------------------------------------------------
  221. #define        FILENAME_SINGLEFILE        0    // Filename must not contain directory specification
  222. #define        FILENAME_DIRWITHSLASH            1    // Dirname must contain a final slash
  223. #define     FILENAME_DIRWITHOUTSLASH        2    // Dirname must not contain a final slash
  224. #define        FILENAME_DIRANDFILE        3    // Dirname + Filename
  225.  
  226. #define        CHECK_NOCHECK            0       // No check
  227. #define        CHECK_FILEEXIST            1    // The file must exist
  228. #define     CHECK_ROOTDIRSEXIST        2    // All root directories ( without the last ) must exist
  229. #define        CHECK_ALLDIREXIST        3    // All directories must exist
  230. #define        CHECK_DIRANDFILE        4    // All directories and the file must exist
  231.                     
  232. extern BOOL  WINAPI IsFileName( LPCSTR szFileName, UINT IsFileType , UINT iCheckMode);              // Return TRUE if szFileName is valid 
  233. extern BOOL  WINAPI FormatFileNameValid( LPCSTR szFileNameIn, BOOL bWithFinalSlash, LPSTR szBuffer  );  // Check/Change szFileName (2.5)
  234.  
  235.  
  236. //-------------------------------------------------------------------------------------------------------
  237. // Setup specific directories (you probably don' t need it)
  238. //-------------------------------------------------------------------------------------------------------
  239. extern void WINAPI GetOriginalDir( LPSTR szBuffer );    // Place in szBuffer the directory where setup was launched
  240. extern void WINAPI GetSetupTempDir( LPSTR szBuffer );     // Place in szBuffer the setup temp sytem directory
  241.                                                     
  242.  
  243.  
  244.  
  245.  
  246.  
  247. //------------------------------------------------------------------------------------------------------------------------------------------------------------
  248. // 5 - Setup high level functions ////////////////////////////////////////////////////////////////////////////////////////////////////////////
  249. //------------------------------------------------------------------------------------------------------------------------------------------------------------
  250. // Note:
  251. //
  252. //     You need to initialise the DLL before any call to these functions
  253. //
  254. //------------------------------------------------------------------------------------------------------------------------------------------------------------
  255. //     
  256. //    Many functions are not required to create a setup programm.
  257. //    At least you should call:
  258. //
  259. //            SetupInitialize( "TEST", "", LANGUAGE_ENGLISH, SrcDir, DestDir)        ----> Initialize the DLL
  260. //            AddSectionToCopyList( "Files", "dir" )                    ----> Choose a Section to copy
  261. //            DeleteSystemDir()                            ----> To clean up the drive
  262. //
  263. //------------------------------------------------------------------------------------------------------------------------------------------------------------
  264.                            
  265.                            
  266. //-------------------------------------------------------------------------------------------------------
  267. // Initialization functions
  268. //-------------------------------------------------------------------------------------------------------
  269. extern BOOL  WINAPI SetupInitialize( LPCSTR szYourName, LPCSTR szPassword, int Language , LPCSTR szSrcDir, LPCSTR szDestDir );// First initializtion function
  270. extern BOOL  WINAPI SetLogFile( LPCSTR szLogFileName );                // Specifie Log File for Setup ( if szLogFileName = "", LogFile is not used );
  271. extern BOOL  WINAPI SetSharedBatchFile( LPCSTR szBatchFileName, LPCSTR szSysDir );// Specifie the file for shared system files
  272.                                      
  273.                                      
  274. //-------------------------------------------------------------------------------------------------------
  275. // DDE Link with Progman functions
  276. //-------------------------------------------------------------------------------------------------------
  277. extern void WINAPI AddItemToProgman( LPCSTR szGroupName, LPCSTR szExeName, LPCSTR szTitle, LPCSTR szTextInfo );// Add item to PROGMAN
  278. extern BOOL WINAPI AddProgmanGroup( LPCSTR szGroupName );        // Add a group to Progman
  279. extern BOOL WINAPI ShowProgmanGroup( LPCSTR szGroupName );        // Show a group 
  280. extern BOOL WINAPI DeleteProgmanGroup( LPCSTR szGroupName );        // Delete a group
  281. extern BOOL WINAPI AddProgmanItem( LPCSTR szProgName, LPCSTR szTitle );    // Add an item to Progman
  282. extern BOOL WINAPI DeleteProgmanItem( LPCSTR szItemName );        // Delete an item of a group
  283. extern BOOL WINAPI QuitProgman( void );                    // Quit Progman
  284.  
  285.  
  286. //-------------------------------------------------------------------------------------------------------
  287. // Specific functions
  288. //-------------------------------------------------------------------------------------------------------
  289. extern BOOL  WINAPI AddSectionToCopyList( LPCSTR szSection, LPCSTR szDestDir );    // Select a section
  290. // These are the values returned by GoSetup Function - 
  291. #define    SETUP_SUCCESSFUL    1    // Transfert is OK
  292. #define SETUP_USERBYPASS    2    // User bypassed a file
  293. #define    SETUP_FAILINCOPYING    3    // Fail in copy ( fatal )
  294. #define    SETUP_USERABORT        4    // User abort transfer ( fatal )
  295. #define    SETUP_CANTCREATEDIR    5    // Can' t create destination directoy ( fatal )
  296. #define    SETUP_WRONGSIZE        6    // File size verification error ( Verify mode only - fatal )
  297. #define    SETUP_INTERNALERROR    7    // Error in YOUR programm... ( fatal )
  298. // These are the messages sent by GoSetup Function to hwnd:
  299. #define SN_FILENOTFOUND        WM_USER + 381    // File not found in disk - not fatal - lp is FileName
  300. #define    SN_SRCDIRCHANGE        WM_USER + 382   // User change source directory - retrieve new dir with AskForSrcDir
  301. #define    SN_NEWDISKREQUIRED    WM_USER + 383    // Dialog box " New disk required is shown " - lp = new disk label
  302. #define SN_FILEINSTALLED    WM_USER + 384   // File isntalled: lp is destination filename [NEW]
  303.  
  304. extern UINT  WINAPI GoSetup( HWND hwnd, BOOL bUseFinish );    // Main setup transfer file function
  305. extern BOOL  WINAPI DeleteSystemDir( void );            // Delete setup temp sytem directory
  306. extern BOOL  WINAPI AddPath( LPCSTR szNewPath );         // Add a PATH in autoexec.bat ( support DOS 6 multi boot )
  307. extern BOOL  WINAPI GetWinFileAssociation( LPCSTR szFileExtName, LPSTR szBuffer );    // Return program for a data file (2.5)
  308. extern BOOL  WINAPI CreateWinFileAssociation( LPCSTR szFileExtName, LPCSTR szExeFile );    // Create a new Winfile data file association
  309. extern BOOL  WINAPI ShowWaitCursor( void );                        // Show the Wait Cursor
  310. extern BOOL  WINAPI HideWaitCursor( void );                        // Hide the Wait Cursor
  311.  
  312.  
  313.  
  314. //-------------------------------------------------------------------------------------------------------
  315. // Interface functions
  316. //-------------------------------------------------------------------------------------------------------
  317. #define BROSSE_PBLANC        1    // Define BRUSH color for background.... ( WHITE )
  318. #define BROSSE_PNOIR        2      // ... ( BLACK )
  319. #define BROSSE_GRIS100        3    // ... ( VERY LIGHT GREY )
  320. #define BROSSE_PGRISC        4    // ... ( LIGHT GREY )
  321. #define BROSSE_GRIS150        5    // ... ( MIDDLE GREY )
  322. #define BROSSE_PGRISF        6    // ... ( DARK GREY )
  323. #define BROSSE_CYAN25        7    // ... ( VERY LIGHT CYAN )
  324. #define BROSSE_CYAN50        8    // ... ( LIGHT CYAN )
  325. #define BROSSE_CYAN100        9    // ... ( MEDIUM CYAN )
  326. #define BROSSE_PCYANC        10     // ... ( CYAN )
  327. #define BROSSE_PCYANF        11    // ... ( DARK CYAN )
  328. #define BROSSE_CYAN200        12    // ... ( VERY DARK CYAN )
  329. #define BROSSE_BLEU50        13    // ... ( LIGHT BLUE )
  330. #define BROSSE_BLEUVERT          14    // ... ( LIGHT BLUE GREEN )
  331. #define BROSSE_BLEU150        15    // ... ( MEDIUM BLUE )
  332. #define BROSSE_PBLEUC        16    // ... ( BLUE )
  333. #define BROSSE_BLEU200        17    // ... ( DARK BLUE )
  334. #define BROSSE_PBLEUF        18    // ... ( VERY DARK BLUE )
  335. #define BROSSE_BLEU250        19    // ... ( BLUE BLACK )
  336. #define BROSSE_VERT25        20    // ... ( VERY LIGHT GREEN )
  337. #define BROSSE_VERT50        21    // ... ( LIGHT GREEN )
  338. #define BROSSE_VERT100        22    // ... ( MEDIUM GREEN )
  339. #define BROSSE_PVERTC        23    // ... ( SALAD GREEN )
  340. #define BROSSE_VERT200        24    // ... ( LIGHT DARK GREEN )
  341. #define BROSSE_VERT250        25    // ... ( MEDIUM DARK GREEN )
  342. #define BROSSE_PVERTF        26    // ... ( DARK GREEN )
  343. #define BROSSE_KAKI        27    // ... ( KHAKI )
  344. #define BROSSE_JAUNE50        28    // ... ( VERY LIGHT YELLOW )
  345. #define BROSSE_JAUNE100           29    // ... ( LIGHT YELLOW )
  346. #define BROSSE_PJAUNEC           30    // ... ( YELLOW )
  347. #define BROSSE_JAUNE150           31    // ... ( DARK YELLOW )
  348. #define BROSSE_ORANGE           32    // ... ( ORANGE )
  349. #define BROSSE_BEIGE        33    // ... ( BEIGE )
  350. #define BROSSE_PJAUNEF           34    // ... ( VERY DARK YELLOW )
  351. #define BROSSE_MARRON           35    // ... ( BROWN )
  352. #define BROSSE_ROSE100         36    // ... ( PINK )
  353. #define BROSSE_ROUGE100       37    // ... ( LIGHT RED )
  354. #define BROSSE_PROUGEC          38    // ... ( RED )
  355. #define BROSSE_PROUGEF          39    // ... ( DARK RED )
  356. #define BROSSE_FUSH50        40    // ... ( VERY LIGHT MAGENTA )
  357. #define BROSSE_FUSH100        41    // ... ( LIGHT MAGENTA )
  358. #define BROSSE_PFUSHC        42    // ... ( MAGENTA )
  359. #define BROSSE_PFUSHF        43    // ... ( DARK MAGENTA )
  360. #define BROSSE_3DRECT        44    // ... ( SPECIAL - 3D RECTANGLE )
  361. #define BROSSE_3DCIRCLE           45      // ... ( SPECIAL - 3D CIRCLE )
  362. #define BROSSE_3DLOZANGE      46      // ... ( SPECIAL - 3D DIAMOND )
  363.  
  364. extern BOOL WINAPI SetPatternBrush( HINSTANCE hi, UINT iBitmap );    // Create a user brush with a bitmap ( 8*8 pixels only )
  365. extern BOOL WINAPI SetPatternBrushStandard( UINT iModel );        // Create a brush using a BROSSE_*
  366. extern BOOL WINAPI SetupSetTitle( LPCSTR szDialogTitle );        // Set the title of dialog boxes ( Registered version only ) [NEW]
  367. extern BOOL WINAPI SetupSetBeepMode ( BOOL bDiskBeepMode );        // Select or not the BEEP mode [NEW]
  368. extern BOOL WINAPI SetLogo( HINSTANCE hi, UINT iSetupLogo );        // Specifie a BITMAP to use as a LOGO ( LIGHT MAGENTA is transparent color ).
  369. extern BOOL WINAPI SetLogoType( BOOL bTextType );            // If bTextType is TRUE, Setup will use the text as the LOGO, else it will use the bitmap.
  370. extern BOOL WINAPI SetTextLogo( LPCSTR szLogoText, LPCSTR szFont, UINT iLogoSize, COLORREF clrLogo, BOOL b3D, BOOL bItalic );  // Specifie the LOGO text title
  371. extern BOOL WINAPI SetTextDetail( LPCSTR szLogoText, LPCSTR szFont, UINT iLogoSize, COLORREF clrLogo, BOOL b3D, BOOL bItalic );  // Specifie the LOGO text detail [NEW]
  372. extern BOOL WINAPI SetVerifyMode( BOOL bVerify );            // Select or deselect the File Size Verification mode ( if size is bad, setup will abort ).
  373.  
  374. #define LANGUAGE_ENGLISH    0    // Language definition ( use French or English )
  375. #define    LANGUAGE_FRENCH        1    // ...
  376. #define    LANGUAGE_GERMAN           2    // NOT AVAILABLE FOR THIS VERSION !!!
  377. #define    LANGUAGE_SPANISH    3    // NOT AVAILABLE FOR THIS VERSION !!!
  378.  
  379. extern BOOL   WINAPI SetupSetLanguage( UINT cSetupLanguage );    // Choose a language ( french or english ) [NEW]
  380. extern BOOL   WINAPI ShowMainWindow( HWND hOriginalWnd );      // The main function wich paint your window as a Setup Like window ( for PAINT )
  381.  
  382.  
  383.  
  384.  
  385. //------------------------------------------------------------------------------------------------------------------------------------------------------------
  386. // 6 - New functions /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  387. //------------------------------------------------------------------------------------------------------------------------------------------------------------
  388. extern void   WINAPI CenterDialogBox( HWND m_hWnd );            // Center a dialog box ( take care of its parent window )
  389. extern void   WINAPI GiveTheHand( void );                // Give the hand during a long treatment.
  390. extern BOOL   WINAPI CopyFile( LPCSTR szSrcFile, LPCSTR szDestFile);    // Copy a file ( replace ExpandAndCopyFile )
  391. extern BOOL   WINAPI IsFileNewer( LPCSTR szFileIn, LPCSTR szFileOut);    // TRUE if <szFileIn> is newer than <szFileOut>
  392. extern void   WINAPI GetBackupName( LPCSTR szFileIn, LPSTR szNewName);    // Fill <szNewName> with a not used file name.
  393. extern BOOL   WINAPI BackupFile( LPCSTR szFileIn );            // Backup a file. 
  394. extern void   WINAPI SetupBrowseDir( HWND hWnd, LPSTR szBuffer );        // Display a browse dialog box [2.4]
  395. // VB Functions [2.4] (See corresponding functions for details) ---REMOVED---
  396. //extern void   WINAPI VBFormatFileNameValid( LPCSTR szFileNameIn, BOOL bWithFinalSlash, LPSTR szBuffer  );
  397. //extern void   WINAPI VBGetAbsoluteFileName( LPCSTR szFileName, LPSTR szBuffer );
  398. //extern void   WINAPI VBGetPathFromPATH(  int iPath, LPSTR szBuffer );
  399. //extern void   WINAPI VBGetEnvVariable( LPCSTR szVariableName, LPSTR szBuffer );
  400. //extern void   WINAPI VBGetIniString ( LPCSTR szFile, LPCSTR szSection, LPCSTR szKey, LPCSTR szDefault, LPSTR szBuffer );
  401. //extern void   WINAPI VBGetWinFileAssociation( LPCSTR szFileExtName, LPSTR szBuffer );
  402. //extern void   WINAPI VBGetStringFromFile( LPCSTR szFileName, long lIndex, LPSTR szBuffer );
  403.  
  404. extern BOOL   WINAPI SetupHasWin4Look( void );                 // (2.5)
  405.  
  406. // ---------------------- END OF SETUP STUDIO ( CSETUP.DLL ) 2.6 INCLUDE FILE -------------------------------------------------------
  407. #endif
  408.  
  409. #ifdef __cplusplus
  410.           }
  411. #endif
  412.